package cn.com.shopec.erp.purchase.service;

import java.util.List;

import cn.com.shopec.erp.common.page.PageFinder;
import cn.com.shopec.erp.common.page.PageQuery;
import cn.com.shopec.erp.purchase.entity.PurchaseRequisitionProduct;
import cn.com.shopec.erp.purchase.entity.PurchaseReturnOrder;
import cn.com.shopec.erp.purchase.vo.PurchaseOrderVo;
import cn.com.shopec.erp.purchase.vo.PurchaseRequisitionProductVo;

/** 
 * @ClassName: IPurchaseOrderService 
 * @Description: 采购单业务service接口
 * @author: lule
 * @date 2013-5-22 上午11:05:50
 *  
 */
public interface IPurchaseRequisitionService {

	/**
     * 
     * @Title: purchaseOrderListToWarehouse
     * @Description: 采购商品入库
     * @param PurchaseOrderVo
     * @param pageQuery
     * @return
     * @throws
     * @author: LiangShunWang
     * @date: 2016-12-1下午16:52:05
     */
	 public PageFinder<PurchaseRequisitionProductVo> purchaseOrderListToWarehouse(PurchaseRequisitionProductVo purchaseOrderVo, PageQuery pageQuery)throws Exception;
	 
	 
	 /**
     * 
     * @Title: updateBrand
     * @Description: 修改采购信息
     * @param brandVo
     * @return
     * @throws
     * @author: duhui
     * @date: 2013-5-26下午04:17:40
     */
    public boolean updatePurchaseOrder(List<PurchaseRequisitionProductVo> purchaseOrderVo,String poNo);
    
    /**
     * 
     * @Title: purchaseOrderListToWarehouse
     * @Description: 采购商品入库
     * @param PurchaseOrderVo
     * @param pageQuery
     * @return
     * @throws
     * @author: LiangShunWang
     * @date: 2016-12-1下午16:52:05
     */
	 public PageFinder<PurchaseRequisitionProductVo> purchaseReturnListToWarehouse(PurchaseRequisitionProductVo purchaseOrderVo, PageQuery pageQuery)throws Exception;
	 
	 /**
     * 
     * @Title: deletePurchase
     * @Description: 修改采购单货品信息
     * @param brandVo
     * @return
     * @throws
     * @author: Liangshunwang
     * @date: 2013-5-26下午04:17:40
     */
     public boolean updatePurchaseRequisition(PurchaseReturnOrder purchase) throws Exception;
     
     
     public PurchaseRequisitionProduct  getPurchaseRequistionById(String prqNo);
     
     /** 
 	 * @Title: updateAuditResultPurchaseOrder 
 	 * @Description:出库后修改采购单实体状态锁
 	 * @param poNo
 	 * @throws Exception  
 	 * @throws 
 	 * @author: Liang Shun Wang
 	 * @date: 2013-5-24下午9:35:26
 	 */
 	public Boolean updateAuditResultPurchaseRequestion(String purchaseNo,String prodNo) throws Exception;
 	
 	/**
     * 
     * @Title: purchaseOrderListToExpired
     * @Description:获取过期的货品
     * @param PurchaseOrderVo
     * @param pageQuery
     * @return
     * @throws
     * @author: LiangShunWang
     * @date: 2016-12-1下午16:52:05
     */
	 public PageFinder<PurchaseRequisitionProduct> purchaseOrderListToExpired(PurchaseRequisitionProduct purchaseRequisitionProduct, PageQuery pageQuery)throws Exception;
 	
	 
	 /**
	     * 
	     * @Title: purchaseOrderListToExpired
	     * @Description:获取库存报警的货品
	     * @param PurchaseOrderVo
	     * @param pageQuery
	     * @return
	     * @throws
	     * @author: LiangShunWang
	     * @date: 2016-12-1下午16:52:05
	     */
		 public PageFinder<PurchaseRequisitionProduct> purchaseOrderListToInventoryAlarm(PurchaseRequisitionProduct purchaseRequisitionProduct, PageQuery pageQuery)throws Exception;
	 	
    
}
